package com.flower.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.flower.domain.entity.Favorite;
import com.flower.domain.vo.buyer.FavoriteVO;

/**
* @author 86178
* @description 针对表【favorite(收藏夹表)】的数据库操作Service
* @createDate 2025-03-04 12:26:59
*/
public interface FavoriteService extends IService<Favorite> {
    /**
     * 获取用户收藏列表
     */
    Page<FavoriteVO> getFavorites(Integer page, Integer pageSize);

    /**
     * 添加收藏
     */
    void addFavorite(Integer productId);

    /**
     * 取消收藏
     */
    void removeFavorite(Integer favoriteId);
    
    /**
     * 根据商品ID取消收藏
     */
    void removeFavoriteByProductId(Integer productId);

    /**
     * 检查商品是否已收藏
     */
    boolean checkFavorite(Integer productId);
    
    /**
     * 根据商品ID获取收藏信息
     */
    FavoriteVO getFavoriteByProductId(Integer productId);
}
